export interface AlbumView {
  id?: number | null
  /** 分类ID */
  categoryId?: number | null
  /** 专辑名称(如:宝宝巴士启蒙音乐剧) */
  name?: string | null
  /** 原始目录名称 */
  originalName?: string | null
  /** 专辑排序序号 */
  sortOrder?: number | null
  /** 专辑集数(如:159) */
  episodeCount?: number | null
  /** 专辑封面路径 */
  coverUrl?: string | null
  /** 媒体类型 */
  mediaType?: string | null
}

export interface CategoryView {
  id?: number | null
  /** 分类名称(如:宝宝巴士) */
  name?: string | null
  /** 媒体类型 */
  mediaType?: string | null
}

export interface MediaView {
  id?: number | null
  /** 所属专辑ID */
  albumId?: number | null
  /** 单集标题(如:奇妙的身体) */
  title?: string | null
  /** 单集序号(如:1表示第1集) */
  episodeSeq?: number | null
  /** 单集排序序号 */
  sortOrder?: number | null
  /** 文件路径标识 */
  filePath?: string | null
  /** 过期时间 (使用字符串表示日期) */
  expirationDate?: number | null
  /** 时长(秒) */
  duration?: number | null
  /** 媒体类型 */
  mediaType?: 'audio' | 'video' | null
  /** 文件大小(字节) */
  fileSize?: number | null
  /** 文件格式(mp4, mp3等) */
  fileFormat?: string | null
}

/**
 * 播放历史记录视图对象
 */
export interface PlaybackHistoryView {
  /**
   * 唯一标识符
   */
  id: number

  /**
   * 用户ID
   */
  userId: string

  /**
   * 媒体资源ID
   */
  mediaId: number

  /**
   * 媒体标题
   */
  title: string

  /**
   * 所属专辑名称
   */
  albumName: string

  /**
   * 所属分类名称
   */
  categoryName: string

  /**
   * 开始播放时间 (ISO 8601 格式)
   */
  startTime: string

  /**
   * 已播放时长（秒）
   */
  progressSeconds: number

  /**
   * 媒体总时长（秒）
   */
  durationSeconds: number

  // ===== 可选扩展字段 =====
  /**
   * 封面图URL
   */
  coverImage?: string

  /**
   * 媒体类型 (video/audio)
   */
  mediaType?: 'video' | 'audio'
}
